/*
 * @Author: your name
 * @Date: 2020-11-10 16:44:27
 * @LastEditTime: 2021-06-15 12:56:13
 * @LastEditors: Please set LastEditors
 * @Description: In User Settings Edit
 * @FilePath: /project/src/index/apis/Home/model.ts
 */
/**
 * Model 数据中转层
 */
export const saveContract = {
  request(params:any) {
    const obj = {
      // 合同名称
      name: params?.contractName,
      // 合同小类
      contractType: params?.contractKind?.label,
      // 合同编号
      number: params?.contractNo,
      // year
      year: params?.contractYear?.label,
      // 经办人
      handling: params?.contractAgent?.value,
      // 经办人联系方式
      agentPhone: params?.agentContact,
      // 业务归属部门
      belongOrg: params?.businessDepartment,
      // 签约公司
      company: params?.signingCompany,
      // 合同生效日期
      startDate: params?.contractCommencementDate?.split('T')[0],
      // 合同截止日期
      endDate: params?.contractDeadline?.split('T')[0],
      // 合同到期处理方式
      expireHandling: params?.treatmentContractExpiration?.label,
      // 争议解决方式
      disputeResolution: params?.disputeResolution?.label,
      // 争议处理管辖约定
      disputeRegulation: params?.agreementJurisdictionDisputeSettlement?.label,
      // 指定管辖
      designatedJurisdiction: params?.designatedJurisdiction,
      // 是否电子签署
      ifElectricSign: params?.hasElectronicSignature?.label?.includes('是') ? true : false,
      // 申请人
      applicant: params?.applyName,
      // 申请人联系方式
      applicantPhone: params?.applyContactInformation,
      // 申请日期
      applyDate: params?.applyDate?.split('T')[0],
      // 实体印章名称
      stampName: params?.nameEntitySeal,
      // 用印次数
      stampTime: params?.printingTimes,
      // 是否使用立邦格式合同
      ifUseLBContract: params?.hasLiBangContract?.label?.includes('是') ? true : false,
      // 未使用立邦格式合同原因
      notUseLBcontractReason: params?.noLiBangContractReason,
      // 高风险违约责任
      liability: params?.highRiskLiabilityBreachContract,
      // 备注
      remark: params?.remarks,
      // ========租赁申请方信息
      // 客户名称
      clientName: params?.customerName,
      // 客户编码
      clientNumber: params?.customerCode,
      // 客户账号
      clientAccount: params?.customerAccount,
      // 统一社会信用代码
      // eslint-disable-next-line camelcase
      code_ID: params?.customerCardId,
      // 最近一次年检年报
      latestAnnualReport: params?.latestAnnualReport,
      // 营业执照截至日期
      yyzzExpire: params?.businessLicenseDeadline?.split('T')[0],
      // 是否为自然人
      ifNatural: params?.naturalPerson?.label?.includes('是') ? true : false,
      // 建立合作方式
      cooperationWay: params?.cooperationMode?.label,
      // 合同标的（元）
      amount: params?.contractObject,
      // 合同金额
      amountType: params?.contractNumberType?.label,
      // 付款顺序
      payOrder: params?.paymentOrder?.label,
      // 付款方式
      payWay: params?.paymentType?.label,
      // 付款时间
      payDate: params?.payDate?.split('T')[0],
      // 付款金额
      payAmount: params?.payNumberTotal,
      // 结算周期
      settlementInterval: params?.settlementCycle?.label,
      // 项目
      project: params?.projectName,
      // 单价
      priceUnit: params?.projectPrice,
      // 成本中心号
      costCentreNumber: params?.costCenterNumber,
      // 公司代码
      compCode: params?.companyCode,
      // 分摊比例
      ftPercent: params?.apportionmentRatio,
      // 预算确认
      budgetConfirm: params?.budgetConfirmation?.label,
      // =====出租方信息
      // 出租方联系人
      leaseContact: params?.ContactLessor,
      // 出租方联系方式
      leasePhone: params?.ContactLessorInformation,
      // 机器设备名称
      machineName: params?.machineName,
      // 机器设置价值
      machinePrice: params?.machineValue,
      // 是否购买保险
      ifInsurance: params?.haveInsurance?.label,
      // 设备所在地是否为工厂
      ifLocal: params?.locationIsFactory,
      // 工厂代码
      factoryCode: params?.factoryCode,
      // 设备所在地址
      factoryAddress: params?.addressEquipment,
      // 租赁性质
      leaseType: params?.natureLease?.label,
      // 租赁期数（月）
      leaseMonths: params?.leaseTerm,
      // 租赁单价（元/月）
      leasePriceUnit: params?.leasePrice,
      // 租金是否递增
      ifDiZeng: params?.rentIncreas?.label?.includes('是') ? true : false,
      // 递增周期
      dzCircle: params?.increasingCycle?.label,
      // 递增开始日期
      dzStartDate: params?.incrementStartDate?.split('T')[0],
      // 递增结束日期
      dzEndDate: params?.incrementEndDate?.split('T')[0],
      // 递增金额
      dzAmount: params?.incrementalAmount,
      // 是否有免租期
      ifleaseFree: params?.hasRentFreePeriod?.label?.includes('是') ? true : false,
      // 免租期时长（月）
      leaseFreeMonth: params?.rentFreePeriod,
      // 押金支付方式
      yajinPayWay: params?.paymentMethod,
      // 押金退还方式
      yajinTuiHuan: params?.refundMethod,
      // 维修负责承担方
      repaireParty: params?.responsibleMaintenance,
      // 是否在租赁地址办理营业执照
      sfzzldz: params?.applyBusinessLicense?.label?.includes('是') ? true : false,
      // 是否允许提前退租
      iftuizu: params?.earlyRefund?.label?.includes('是') ? true : false,
      // 退租提前告知时长（日）
      tuizuDuration: params?.daysAdvanceRent,
      // 提前退租赔偿（元）
      tuizuCompensation: params?.earlyRentRefund,
      // 出租方免责条款
      exceptionClause: params?.exemptionClause
    }
    return {...obj}
  },
  response(data:any) {
    return data?.data
  }
}
export const getUserInfoByJwt = {
  request(params:any) {
    return params
  },
  response(data:any) {
    return data?.data?.data
  }
}
export const reqTableList = {
  request(params:any) {
    return {
      applicationStatus:
        // eslint-disable-next-line @typescript-eslint/prefer-optional-chain
        params.applicationStatus && params.applicationStatus.length
          ? params.applicationStatus.join(',')
          : '',
      competentDepartment:
        // eslint-disable-next-line @typescript-eslint/prefer-optional-chain
        params.competentDepartment && params.competentDepartment.length
          ? params.competentDepartment.join(',')
          : '',
      name: params.name ? params.name : '',
      page: params.pageNumber,
      size: params.pageSize
    }
  },
  response(data:any) {
    return data?.data
  }
}
